$(function () {
    load();
});


function submit1() {

    var form = document.getElementById("form");
    var str = $("#upfile").val();
    // alert(str);
    if (checkFileType(str)) {
        // form.submit();
        $("#loading").show()
        ajaxSubmit();
    }
}

function ajaxSubmit() {
    var fileObj = document.getElementById("upfile").files[0]; // js 获取文件对象
    if (typeof (fileObj) == "undefined" || fileObj.size <= 0) {
        layer.alert("请选择文件");
        return;
    }
    var formFile = new FormData();
    formFile.append("action", "UploadVMKImagePath");
    formFile.append("upfile", fileObj); //加入文件对象

    var data = formFile;

    $.ajax({
        cache: true,
        type: "POST",
        url: "/transferAccountsExcel/excelForData",
        data: data,// 你的formid
        async: false,
        processData: false,
        contentType: false,
        error: function (request) {
            layer.alert("Connection error");
            $("#loading").hide()
        },
        success: function (data) {
            $("#loading").hide()
            if (data.code == 0) {
                layer.alert("操作成功");
                load();
                /*parent.layer.msg("操作成功");
                parent.reLoad();
                var index = parent.layer.getFrameIndex(window.name); // 获取窗口索引
                parent.layer.close(index);*/

                layer.alert("操作成功");
                window.location.href = "/transferAccountsExcel/excelToPage";
            } else {
                layer.alert("操作失败");
            }

        }
    });
}

function reLoad() {
    var opt = {
        url: "/transferAccountsExcel/list",
        silent: true,
        query:{
            status:$('#status').val(),
        }
    };

    $('#exampleTable').bootstrapTable('refresh',opt);
}

    function ss() {
        parent.reLoad();
        var index = parent.layer.getFrameIndex(window.name); // 获取窗口索引
        parent.layer.close(index);
    }

//上传 excel文件
    function importExcel(formData) {
        $.ajax({
            url: "/transferAccountsExcel/excelForData",
            type: 'POST',
            cache: false,
            data: formData,
            dataType: "json",
            processData: false,
            contentType: false
        }).done(function (msg) {
            if (msg.result == 1) {
                load();
            }
            if (msg.result == 0) {
                load();
                //parent.layer.alert(msg);

            }
            load();
        }).fail(function (msg) {
            layer.alert("读取错误！");
        });
    }


//选择文件事件
$("#fileUpload").change(function () {
    //$("#roomid").val("");
    //$("#showid").val("");
    var str = $("#fileUpload").val();
    if (checkFileType(str)) {
        var formData = new FormData();
        formData.append('fileUpload', $('#fileUpload')[0].files[0]);
        importExcel(formData);
    }
});
function clearDate(){
    $('#status').val('');

}

function checkFileType(str) {
    var index = str.lastIndexOf('.');
    var strtype = str.substr(index, str.length);

    strtype = strtype.toLowerCase();
    if ("" == strtype) {
        layer.alert("选择需要导入的Excel文件！")
        return false;
    }
    if (".xls" != strtype && ".xlsx" != strtype) {
        layer.alert("选择需要导入的Excel文件！")
        return false;
    }

    return true;
}

function checkFile(filename) {
    var str = filename.val()
    if (str.length == 0) {
        showMessage("批量发放文件不能为空！");
        return false;
    }
    return true;
}

function excelToPage() {
    window.location.href = "/transferAccountsExcel/excelToPage";
}

window.operateEvents =
    {
        'click .RoleOfedit': function (e, value, row, index) {
            $("#editModal").modal('show');
        }
    };


function operateFormatter(value, row, index) {

    //alert(row.status);
    if (row.status == "未转账"||row.status == "转账失败") {
        if(row.status != "转账失败"){
            return [
                '<button type="button" class="RoleOfedit btn btn-primary  btn-sm" style="margin-right:15px;" onclick="deleteAccount(\'' + row.id + '\',\'' + row.toAccountNo + '\',\'' + row.transferNum + '\')">删除</button>',
                '<button type="button" class="RoleOfedit btn btn-primary  btn-sm" style="margin-right:15px;" onclick="transfers(\'' + row.id + '\',\'' + row.toAccountNo + '\',\'' + row.transferNum + '\')">转账</button>'].join('');
        }else{
            return [
                '<button type="button" class="RoleOfedit btn btn-primary  btn-sm" style="margin-right:15px;" onclick="transfers(\'' + row.id + '\',\'' + row.toAccountNo + '\',\'' + row.transferNum + '\')">转账</button>'].join('');
        }

    }else if(row.status != "转账失败"){

    } else {
        return [].join('');
    }

}

function deleteAccount(id, toAccountNo, transferNum){
    $("#loading").show()
    setTimeout(function () {
        $.ajax({
            url: '/transferAccountsExcel/deleteAccount',
            type: "POST",
            async: false,
            data: {"id": id, "toAccountNo": toAccountNo, "transferNum": transferNum},
            success: function (msg) {
                window.location.reload();
                //  $("#loading").hide()
            }
        })
    }, 100)
}
function transfers(id, toAccountNo, transferNum) {

    $("#loading").show()
    setTimeout(function () {
        $.ajax({
            url: '/tblTransferAccount/transfer',
            type: "POST",
            async: false,
            data: {"id": id, "toAccountNo": toAccountNo, "transferNum": transferNum},
            success: function (msg) {
                window.location.reload();
                //  $("#loading").hide()
            }
        })
    }, 100)


}

function load() {

    $('#exampleTable').bootstrapTable(
        {
            method: 'get', // 服务器数据的请求方式 get or post
            url: "/transferAccountsExcel/list", // 服务器数据的加载地址
            showRefresh: false,
            //	showToggle : true,
            //	showColumns : true,
            iconSize: 'outline',
            toolbar: '#exampleToolbar',
            striped: true, // 设置为true会有隔行变色效果
            dataType: "json", // 服务器返回的数据类型
            pagination: true, // 设置为true会在底部显示分页条
            queryParamsType: "limit",
            // //设置为limit则会发送符合RESTFull格式的参数
            //							singleSelect : false, // 设置为true将禁止多选
            //							// contentType : "application/x-www-form-urlencoded",
            //							// //发送到服务器的数据编码类型
            //							pageSize : 10, // 如果设置了分页，每页数据条数
            //							pageNumber : 1, // 如果设置了分布，首页页码
            //							search : true, // 是否显示搜索框
            //							showColumns : true, // 是否显示内容下拉框（选择显示的列）
            sidePagination: "server", // 设置在哪里进行分页，可选值为"client" 或者 "server"
            queryParams: function (params) {
                return {
                    //说明：传入后台的参数包括offset开始索引，limit步长，sort排序列，order：desc或者,以及所有列的键值对
                    pageSize: params.limit,  					//每页记录条数
                    pageIndex: params.offset / params.limit + 1,	//当前页码
                    /*limit: params.limit,
                    offset: params.offset,*/
                    //offset: params.offset/params.limit+1,
                    fromAccountNo: $('#fromAccountNo').val(),
                    toAccountNo: $('#toAccountNo').val(),
                    status: $('#status').val(),
                    transferNum: $('#transferNum').val(),
                    createTime: $('#createTime').val(),
                };
            },
            // //请求服务器数据时，你可以通过重写参数的方式添加一些额外的参数，例如 toolbar 中的参数 如果
            // 返回false将会终止请求
            columns: [
                {
                    field: 'fromAccountNo',
                    title: '转账账号'
                },
                {
                    field: 'toAccountNo',
                    title: '被转账号'
                },
                {
                    field: 'status',
                    title: '转账状态'
                },
                {
                    field: 'transferNum',
                    title: '转账数量'
                },
                {
                    field: 'createTime',
                    title: '创建时间'
                },
                {
                    field: 'operate',
                    title: '操作',
                    align: 'center',
                    width: 150,
                    events: operateEvents,
                    formatter: function (value, row, index) {
                        return operateFormatter(value, row, index)
                    }

                }

            ]
        });
}